//
package gov.nih.nlm.nls.metamap.lite;

import java.util.Map;
import java.util.HashMap;
import java.util.List;
import java.util.Arrays;

//
/**
 *
 */

public class NegExKeyMap {

  public static Map<List<String>,String> negationPhraseTypeMap = new HashMap<List<String>,String>();
  static {
    // pre negation phrases
    negationPhraseTypeMap.put(Arrays.asList("rules", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("rules", "him", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "her", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "her", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "the", "patient", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("never", "developed"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("denied"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "signs", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "sign", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "the", "patient", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "had"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "to", "be"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "findings", "to", "indicate"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("checked", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "evidence"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "him", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "him", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "cause", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "appear"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "him", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "other", "evidence"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "her", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "her", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "the", "patient", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "her", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("unremarkable", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "new"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("absence", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "the", "patient", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "new", "evidence"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("to", "exclude"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "her", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "known", "to", "have"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "findings", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "feel"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "him", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("cannot"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("denying"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "exhibit"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("rules", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("with", "no"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("without", "any", "evidence", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "radiographic", "evidence", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("rules", "him", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "the", "patient", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("rules", "the", "patient", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "her", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "mammographic", "evidence", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("denies"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("rules", "the", "patient", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "the", "patient", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "suggestion", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("patient", "was", "not"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "the", "patient", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "abnormal"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("negative", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "him", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("evaluate", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("fails", "to", "reveal"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "her", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("cannot", "see"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "her", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "demonstrate"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "him", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "him", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "the", "patient", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "suspicious"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "him", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "her", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("rules", "her", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("declined"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "the", "patient", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "associated", "with"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("resolved"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "complain", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("without", "indication", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("without"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "reveal"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("without", "evidence"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "the", "patient", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "her", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "evidence", "to", "suggest"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("test", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("declines"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "the", "patient", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "him", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "the", "patient", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("rules", "her", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("never", "had"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "have"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "the", "patient", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "know", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("without", "sign", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "her", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "significant"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "him", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("deny"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "appreciate"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "her", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "the", "patient", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("rather", "than"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "the", "patient", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("no", "complaints", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "him", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("free", "of"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("can", "rule", "out"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "him", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("ruled", "her", "out", "against"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("did", "rule", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("adequate", "to", "rule", "him", "out", "for"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("not", "see"), "nega");
    negationPhraseTypeMap.put(Arrays.asList("sufficient", "to", "rule", "him", "out", "for"), "nega");

    // post negation phrases
    negationPhraseTypeMap.put(Arrays.asList("unlikely"),"negb");
    negationPhraseTypeMap.put(Arrays.asList("has", "been", "ruled", "out"), "negb");
    // negationPhraseTypeMap.put(Arrays.asList("free"), "negb");
    negationPhraseTypeMap.put(Arrays.asList("was", "ruled", "out"), "negb");
    negationPhraseTypeMap.put(Arrays.asList("have", "been", "ruled", "out"), "negb");
    negationPhraseTypeMap.put(Arrays.asList("are", "ruled", "out"), "negb");
    negationPhraseTypeMap.put(Arrays.asList("is", "ruled", "out"), "negb");

    // possible pre negation phrases
    negationPhraseTypeMap.put(Arrays.asList("ought", "to", "be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("rule", "the", "patient", "out"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("rule", "her", "out"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("might", "be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("could", "be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("rule", "the", "patient", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("will", "be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("rule", "him", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("what", "must", "be", "ruled", "out", "is"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("may", "be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("r/o"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("ro"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("can", "be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("should", "be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("rule", "him", "out"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("rule", "out"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("rule", "her", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("rule", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("must", "be", "ruled", "out", "for"), "pnega");
    negationPhraseTypeMap.put(Arrays.asList("is", "to", "be", "ruled", "out", "for"), "pnega");

    // possible post negation phrases
    negationPhraseTypeMap.put(Arrays.asList("be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("not", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("being", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("will", "be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("did", "not", "rule", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("might", "be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("ought", "to", "be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("may", "be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("not", "been", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("should", "be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("can", "be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("could", "be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("must", "be", "ruled", "out"), "pnegb");
    negationPhraseTypeMap.put(Arrays.asList("is", "to", "be", "ruled", "out"), "pnegb");

    // conjunctions
    negationPhraseTypeMap.put(Arrays.asList("although"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("apart","from"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","cause","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","cause","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","etiology","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","etiology","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","reason","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","reason","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","cause","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","cause","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","etiology","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","etiology","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","origin","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","origin","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","reason","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","reason","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","source","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","secondary","source","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","source","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","a","source","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","cause","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","cause","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","etiology","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","etiology","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","origin","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","origin","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","reason","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","reason","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","cause","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","cause","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","etiology","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","etiology","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","origin","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","origin","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","reason","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","reason","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","source","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","secondary","source","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","source","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","an","source","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","cause","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","cause","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","etiology","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","etiology","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","origin","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","origin","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","reason","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","reason","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","cause","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","cause","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","etiology","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","etiology","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","origin","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","origin","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","reason","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","reason","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","source","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","secondary","source","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","source","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("as","the","source","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("aside","from"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("but"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("cause","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("cause","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("causes","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("causes","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("etiology","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("etiology","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("except"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("however"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("nevertheless"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("origin","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("origin","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("origins","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("origins","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("other","possibilities","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("reason","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("reason","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("reasons","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("reasons","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("secondary","to"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("source","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("source","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("sources","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("sources","of"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("still"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("though"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("trigger","event","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("yet"), "conj");

    // The following conjunction phrases were added by NLM
    negationPhraseTypeMap.put(Arrays.asList("other","than"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("otherwise"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("then"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("to","account","for"), "conj");
    negationPhraseTypeMap.put(Arrays.asList("to","explain"), "conj");
  }
}
